php设计模式---工厂模式

前言:若小编理解不对请评论区多多指教,另文明交流!

php八大设计模式之工厂模式

工厂模式:

 什么叫做工厂,举个例子郑州富士康,是专门生产苹果手机的,但是这个工厂只加工iphoneX一个机型吗?不是的,这个工厂可能会建立一个模型,例如写一个方法,就是计算手机的周长的方法。 

  加工各机型的小部门则都使用这个方法来计算iphone的周长,这就是一个工厂模式了,工厂提供的是一个统一的运算方法,只要你想计算周长,那么就要用到这个工厂类提供的计算周长的方法。


接下来贴代码让你更加了解其中的意义:

<?php

//富士康这个大工厂类 提供了一个员工计算周长的方法

abstract  class  iphonePer{

           abstract  public function  getPerimter($width,$height);

}

//iphone周长计算

class iphone8 extends iphonePer{

          public function  getPerimter($width,$height){

          return $width*2+$height*2;

          }

}


//iphoneX周长计算

class iphoneX extends iphonePer{

          public function  getPerimter($width,$height){

          return $width*2+$height*2;

          }

}


//iphone8p周长计算

class iphoneX extends iphonePer{

             public function  getPerimter($width,$height){

             return $width*2+$height*2;

             }

}


//接下来让程序员可以进行实例化操作

//一般可以用switch方法

class shilihua{

            public  static function   wayToPer($type){

                            switch($type){

                                      case ''iphone8":

                                                                return new  iphone8 ();

                                                                break;

                                       case ''iphoneX":

                                                                return new  iphoneX ();

                                                                break;

                                       case ''iphone8p":

                                                                return new  iphone8p ();

                                                                break;

                              }

           }

}

$iphone=shilihua:: wayToPer('8');

$value=$iphone->getPerimter(400,200);

echo $value;

?>













  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值